
//插件
(function($){
    //根据地址栏地址添加效果
    $.fn.extend({
        dingwei:function(options){
            var defaults={
                'color':'',
                'background':''
            };
            var options = $.extend({},defaults, options);
            var page = window.location.href;
            
            //var pagestring = page.substring(page.indexOf('/', 10), page.length).split("&");
            var pagestring = page.substring(page.lastIndexOf('/')+1, page.length).split("&");
           return $(this).each(function(){
                var href = $(this).attr('href');
                if (href == pagestring) {
                    $(this).css({'color':options.color,'background':options.background});
                    $(this).addClass('active');
                }
            })
        }
    })



//        文件上传图片预览
    $.fn.extend({
        fileimg:function(options){
            var defaults={
                'fileId':'',
                'imgId':''
            };
            var options = $.extend({},defaults,options);
            $(options.fileId).change(function() {
                var $file = $(this);
                var fileObj = $file[0];
                var windowURL = window.URL || window.webkitURL;
                var dataURL;
                var $img = $(options.imgId);

                if(fileObj && fileObj.files && fileObj.files[0]){
                    dataURL = windowURL.createObjectURL(fileObj.files[0]);
                    $img.attr('src',dataURL);
                }else{
                    dataURL = $file.val();
                    var imgObj = document.getElementById("preview");
// 两个坑:
// 1、在设置filter属性时，元素必须已经存在在DOM树中，动态创建的Node，也需要在设置属性前加入到DOM中，先设置属性在加入，无效；
// 2、src属性需要像下面的方式添加，上面的两种方式添加，无效；
                    imgObj.style.filter = "progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale)";
                    imgObj.filters.item("DXImageTransform.Microsoft.AlphaImageLoader").src = dataURL;

                }
            });
        }
    })



    //读取公共信息插入页面
    $.fn.extend({
        charu:function(options){
            var defaults={
                'room':'',
                'boxconturl':''
            }
            var options = $.extend({},defaults,options);
            var url = options.boxconturl+'.html';
            $.get(options.boxconturl+'.html',function(data){
                $(options.room).html(data);
            });
        }
    })

    
//选项卡
    $.fn.extend({
        tab:function(options){
            var defaults={
                'tabbox':'',
                'tablist':'',
                'select':'',
                'on':''
                //选定效果
            };
            var options = $.extend({},defaults, options);
            return $(this).each(function(){
                $(this).find(options.tablist).first().show().siblings(options.tablist).hide();
                $(this).find(options.select).eq(0).addClass(options.on);
                $(this).find(options.select).each(function(index){
                    $(this).hover(function () {
                        $(this).addClass(options.on).siblings(options.select).removeClass(options.on);
                        $(this).parents(options.tabbox).find(options.tablist).eq(index).show().siblings(options.tablist).hide();
                    });
                });
            });
        }
    })
    
//click选项卡
    $.fn.extend({
        tabclick:function(options){
            var defaults={
                'tabbox':'',
                'tablist':'',
                'select':'',
                'on':''
                //选定效果
            };
            var options = $.extend({},defaults, options);
            //var $this=$(this);
            return $(this).each(function(){
                $(this).find(options.tablist).first().show().siblings(options.tablist).hide();
                $(this).find(options.select).eq(0).addClass(options.on);
                $(this).find(options.select).each(function(index){
                    $(this).click(function () {
                        $(this).addClass(options.on).siblings(options.select).removeClass(options.on);
                        $(this).parents(options.tabbox).find(options.tablist).eq(index).show().siblings(options.tablist).hide();
                    });
                });
            });
        }
    })


//侧边看toggle效果
    $.fn.extend({
        toggleshow:function(options){
            var defaults={
                'togglemenu':'',
                'togglebtn':'',
                'childlist':'',
                'toggletime':''
                //选定效果
            };
            var options = $.extend({},defaults, options);
            return $(this).each(function(){
                $(this).find(options.togglebtn).click(function(){
                    $(this).parents(options.togglemenu).find(options.childlist).toggle(options.toggletime);
                })
            });
        }
    })

//banner 
    $.fn.extend({
        banner:function(options){
            var defaults={
                'lunbo':'',
                'li':'',
                'pre':'',
                'next':'',
                'on':'',
                'number':'',
                'timego':true
            };
            var options = $.extend({},defaults,options);
            return $(this).each(function(){
                var index = 0;
                var length=$(options.li).length-1;

                $(this).find(options.li).eq(0).show().siblings(options.li).hide();
                $(this).find(options.number).each(function(index){
                    $(this).hover(function () {
                        $(this).parents(options.lunbo).find(options.li).eq(index).show().siblings(options.li).hide();
                    });
                });


                $(options.pre).click(function(){
                    if(index>0){
                        index=index-1;
                        $(options.li).eq(index).addClass(options.on).siblings('li').removeClass(options.on);
                        return index;
                    }else{
                        $(options.li).eq(length).addClass(options.on).siblings('li').removeClass(options.on);
                        return index = length;
                    }
                })

                $(options.next).click(function(){
                  next();
                })


                if(options.timego){
                    setInterval(next,2000);
                }

                function next(){
                    if(index<length){
                        index=index+1;
                        $(options.li).eq(index).addClass(options.on).siblings('li').removeClass(options.on);
                        return index;
                    }else{
                        $(options.li).eq(0).addClass(options.on).siblings('li').removeClass(options.on);
                        return index = 0;
                    }
                }
            })
        }
    })



//Marquee 滚屏显示新闻
    $.fn.extend({
        Marquee:function(options){
            //处理参数
            options = $.extend({
                linenum:1,
                speed:40,
                delay:1000
            },options);
            return $(this).each(function(){
                var o = this;
                var t;
                var p = false;
                o.innerHTML += o.innerHTML;
                o.onmouseover = function () { p = true }
                o.onmouseout = function () { p = false }
                o.scrollTop = 0;

                var lheight = $(o).find("li").outerHeight(true);
                var len = $(o).find('li').length;
                o.style.overflow="hidden";
                o.style.height = lheight * len / 2 + 'px';
                //alert(lheight * len /2);
                function start() {
                    t = setInterval(scrolling, options.speed);
                    if (!p) { o.scrollTop += 1;
                    }
                }
                function scrolling() {
                    if (o.scrollTop % lheight != 0) {
                        o.scrollTop += 1;
                        if (o.scrollTop >= o.scrollHeight / 2) o.scrollTop = 0;
                    } else {
                        clearInterval(t);
                        setTimeout(start, options.delay);
                    }
                }
                setTimeout(start,options.delay);
            });
        }
    })




//手风琴效果
    //li  手风琴父级列表  title 显示用来触发效果 cont 被隐藏的地方
    $.fn.extend({
        accordion:function(options){
            options = $.extend({
                'li':'',
                'title':'',
                'cont':'',
                speed:40,  //暂时没用到
                delay:1000 //暂时没用到
            },options);
            return $(this).each(function(){
                //初始化各种数值
                var contwidth=$(options.cont).width(); //展开后的宽度
                var length=$(options.li).length-1;  //标识列表 索引值
                //计算显示所有宽度
                var width=$(options.title).outerWidth(true)*$(options.li).length+$(options.cont).width()+'px';
                $(this).css({'width':width})
                //初始化清空各种数值
                $(options.cont).css({'width':'0px'});
                //设置默认展开的li
                $(options.li).eq(length).find(options.cont).css({'width':contwidth});
                //hover  触发方式
                $(this).find(options.title).hover(function(){
                    $(options.li).find(options.cont).css({'width':'0px'});
                    $(this).siblings(options.cont).css({'width':contwidth});
                })

            })
        }
    })

})(jQuery);







